#ifndef __UPLOAD_H__
#define __UPLOAD_H__

#define UPLOAD_LOG_MODULE "cgi"
#define UPLOAD_LOG_PROC "upload"

/**
 * @brief 读取数据库配置信息
 */
void reddMySqlConfig();

/**
 * @brief 获取Content-Disposition中name对应的value
 * @param buffer Content-Disposition字符串
 * @param name name
 * @param value value
 */
void GetContentDispositionStrValue(char *buffer, char *name, char *value);

/**
 * @brief 保存文件
 * @param len 文件长度
 * @param user 用户名
 * @param filename 文件名
 * @param md5 文件md5
 * @param token 文件token
 * @param size 文件大小
 * @return 成功返回0，失败返回-1
 */
int RecvSaveFile(long len, char *user, char *filename, char *md5, char* token, long *size);

/**
 * @brief 上传文件到fastDFS
 * @param filename 文件名
 * @param fileId 文件id
 * @return 成功返回0，失败返回-1
 */
int UploadToFastDfs(char *filename, char *fileId);

/**
 * @brief 生成文件url
 * @param fileId 文件id
 * @param fdfsFileUrl 文件url
 * @return 成功返回0，失败返回-1
*/
int MakeFileUrl(char *fileId, char *fdfsFileUrl);



int InsertFileInfoToMysql(char *user, char *filename, char *md5, long size, char *fdfsFileUrl);
#endif // __UPLOAD_H__